/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package dd;

import java.util.GregorianCalendar;
import java.util.List;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.persistence.Query;
import marcin.belzowski.uslugi.Dyspozytor;
import marcin.belzowski.uslugi.Kierowca;
import marcin.belzowski.uslugi.Klient;
import marcin.belzowski.uslugi.Polozenie;
import marcin.belzowski.uslugi.Samochod;
import marcin.belzowski.uslugi.Zamowienie;
import marcin.belzowski.uslugi.Zlecenie;

/**
 *
 * @author marcin
 */
@Stateless
public class Test implements TestRemote {
EntityManagerFactory emf = Persistence.createEntityManagerFactory("FirmaPU");
EntityManager em = emf.createEntityManager();
    public void funkcja() {
      Klient klient = new Klient("Marcin","Bełzowski");
      Dyspozytor dyspozytor = new Dyspozytor("Jan", "Kowalski", new GregorianCalendar(2010,6,18), null,"login", "brak", false);
      Kierowca kierowca = new Kierowca("Paweł", "Mis", false, "brak");
      Zlecenie zlecenie = new Zlecenie();
      Samochod samochod = new Samochod(kierowca, true);
      Zamowienie zamowienie = new Zamowienie(klient,new GregorianCalendar(2010,1,22), "U1", dyspozytor, true, zlecenie);
//      Polozenie polozenie = new Polozenie();
//      polozenie.setSamochod(samochod);
      kierowca.setSamochod(samochod);

      dyspozytor.dodaj(zamowienie);
      kierowca.dodaj(zlecenie);
      kierowca.setSamochod(samochod);
//      samochod.setPolozenie(polozenie);
      zlecenie.setZamowienie(zamowienie);
      zlecenie.setStawka(11);
      dyspozytor.setLogin("1");
      

      

        em.getTransaction().begin();
        em.persist(klient);
        em.persist(dyspozytor);
        em.getTransaction().commit();
      
    }
    public void pobierz(){
//        em.getTransaction().begin();
     Query q = em.createQuery("select d from Dyspozytor d")  ;
     List<Dyspozytor> list = q.getResultList();
     for (Dyspozytor d : list) {
         System.out.println(d.getNazwisko());
         System.out.println(d.getZamowienia().get(0).getUlicaOczekiwania());
       }
    em.getTransaction().commit();
       
    }
    // Add business logic below. (Right-click in editor and choose
    // "Insert Code > Add Business Method")
 
}
